﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.Mvc;
using System.Xml;

namespace Documents.Common.Interfaces
{

    /// <summary>
    /// This interface specifies the minimum set of operations that the repository must implement
    /// </summary>
    public interface IDocumentRepository
    {
        ActionResult Categories(Guid? parentCategory);
        ActionResult CareEvents();
        ActionResult CareEvent(string careEventID);
        ActionResult Category(Guid categoryID);
        ActionResult Document(Guid documentID);
        ActionResult Documents(string documentType);
        ActionResult Search(object searchCriteria);
        ActionResult History(Guid documentID);
        ActionResult Revoke(Guid documentID);
        ActionResult Countersign(Guid documentID);
        ActionResult Edit(Guid documentID);
        ActionResult Create(string DocumentType);
        ActionResult Duplicate(Guid documentID);
        ActionResult Store(XmlDocument document);
    }
}
